﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace SVC_DAL
{
   public class AberturaCaixaDAL
    {
         Dados objD = null;

         public AberturaCaixaDAL()
        { }

         //inserção
         public void inserir(int fin_usuario, DateTime fin_dataAbertura,TimeSpan fin_horaAbertura, Double fin_valorInicial)
         {
             SqlCommand cmd = null;
             try
             {
                 objD = new Dados();
                 cmd = new SqlCommand();
                 cmd.CommandText = "INSERT INTO fin_abertura_caixa" +
                     "(fin_usuario, fin_dataAbertura, fin_horaAbertura,fin_valorInicial)" +
                     " VALUES (@fin_usuario, @fin_dataAbertura, @fin_horaAbertura,@fin_valorInicial)";
                 cmd.Parameters.Add(new SqlParameter("@fin_usuario", SqlDbType.Int)).Value = fin_usuario;
                 cmd.Parameters.Add(new SqlParameter("@fin_dataAbertura", SqlDbType.DateTime)).Value = fin_dataAbertura;
                 cmd.Parameters.Add(new SqlParameter("@fin_horaAbertura", SqlDbType.Time)).Value = fin_horaAbertura;
                 cmd.Parameters.Add(new SqlParameter("@fin_valorInicial", SqlDbType.Float)).Value = fin_valorInicial;
                 objD.executacomando(cmd);
                 cmd = null;
                 objD = null;
             }
             catch (Exception ex)
             {
                 throw ex;
             }
         }

        //verifica se é a primeira vez que está logando no sistema
        public DataTable isPrimeiraVez()
        {
            DataTable tab = null;
            SqlCommand cmd = null;
            try
            {
                objD = new Dados();
                cmd = new SqlCommand();
                cmd.CommandText = "select fin_codigo from fin_abertura_caixa";
                tab = objD.executaconsulta(cmd);
            }
            catch (Exception)
            {

                throw;
            }
            return tab;
        }

        //verifica se é a primeira vez que está logando no sistema no dia
        public DataTable isPrimeiraVezDia()
        {
            DataTable tab = null;
            SqlCommand cmd = null;
            try
            {
                objD = new Dados();
                cmd = new SqlCommand();
                cmd.CommandText = "select fin_codigo from fin_abertura_caixa where CONVERT(char(11),fin_dataAbertura,113) = CONVERT(char(11),getdate(),113)";
                tab = objD.executaconsulta(cmd);
            }
            catch (Exception)
            {

                throw;
            }
            return tab;
        }

        public DataTable DiaAnterior(DateTime data)
        {
            DataTable tab = null;
            SqlCommand cmd = null;
            try
            {
                objD = new Dados();
                cmd = new SqlCommand();
                cmd.CommandText = "select fin_valorInicial from fin_abertura_caixa where fin_dataAbertura = " + data;
                tab = objD.executaconsulta(cmd);
            }
            catch (Exception)
            {

                throw;
            }
            return tab;
        }

        public DataTable PrimeiroDia()
        {
            DataTable tab = null;
            SqlCommand cmd = null;
            try
            {
                objD = new Dados();
                cmd = new SqlCommand();
                cmd.CommandText = "select top 1 fin_valorInicial from fin_abertura_caixa";
                tab = objD.executaconsulta(cmd);
            }
            catch (Exception)
            {

                throw;
            }
            return tab;
        }
    }
}
